home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Celestin Apprentice 5
/
Apprentice-Release5.iso
/
Source Code
/
Libraries
/
VideoToolbox 96.06.15
/
VideoToolboxSources
/
ATMInterface.h
< prev
next >
Wrap
Text File
|
1995-07-26
|
2KB
|
96 lines
/*
* ATMInterface.h
*
* Version 1.01
*
* Adobe Type Manager is a trademark
* of Adobe Systems Incorporated.
*/
/*
HISTORY:
9/7/94 dgp cosmetic editing. Added pragma once.
9/10/94 dgp changed struct function pointer fields to UniversalProcPtr fields.
6/8/95 dgp Make sure that the structs are 68k aligned so they'll conform to
what ATM expects, even if the project is compiled with ppc alignment.
*/
#pragma once
#define _H_ATMInterface
#ifndef __DEVICES__
#include <Devices.h>
#endif
#ifndef __TYPES__
#include <Types.h>
#endif
#if PRAGMA_ALIGN_SUPPORTED || __MWERKS__
#pragma options align=mac68k
#endif
typedef struct
{
Fixed a, b, c, d, tx, ty;
} FixedMatrix;
#define ATMProcs3Version 3
typedef struct
{
long version;
#ifdef __powerc
UniversalProcPtr fontAvailable,showText,xyshowText;
#else
short (*fontAvailable)(short family,
short style);
short (*showText)(char *text,
short length, FixedMatrix *matrix);
short (*xyshowText)(char *text,
short length, FixedMatrix *matrix,
Fixed *displacements);
#endif
} ATMProcs3;
#if PRAGMA_ALIGN_SUPPORTED || __MWERKS__
#pragma options align=reset
#endif
#define ATMProcsStatusCode 0
/*
initATM initializes ATMInterface, if not already initialized. Returns
1 if and only if ATM is available and
the procsets are correctly initialized
*/
short initATM(void);
/*
fontAvailableATM returns 1 if and
only if ATM can image the specified
family and style
*/
short fontAvailableATM(short family,short style);
/*
showTextATM shows length characters
starting at text transformed by
the specified matrix
Returns the number of characters not shown */
/* Matrix maps one point character space to device space, */
/* relative to current pen position */
/* Matrix's tx and ty components are updated */
short showTextATM(char *text,short length,FixedMatrix *matrix);
/*
Show length characters starting
at text transformed by the specified
matrix.
Matrix maps one point character space
to device space, relative to current pen position.
Matrix's tx and ty components are updated.
Character x and y widths are specified
by displacements.
Returns the number of characters not shown.
*/
short xyshowTextATM(char *text, short length,
FixedMatrix *matrix, Fixed *displacements);